decompiler assembly debugger reverse engineering linux c++ data java software obfuscator recovery debugging reverse engineer assembler cad cobol addiction compiler alcoholism